package cn.whitecao.agent.core.plugin;

import java.util.List;

/**
 * 所有插件都需要实现这个借口
 * @author : BashfulHuang
 **/
public interface PluginDefinition {
    /**
     * 获取插件名
     * @return 插件名
     */
    String getName();

    /**
     * 获取版本号
     * @return 版本号
     */
    Integer getVersion();
    /**
     * 插件类型
     * @return 暂时只有
     */
    String getType();

    /**
     * 获取匹配规则列表,一般只会有一个 用数组会更好
     * @return 规则列表
     */
    List<PluginMatcherRule> getMatcherRuleList();

    /**
     * 获取拦截器的处理类
     * @return 处理器的类
     */
    Class<?> getInterceptorHandlerClass();
}
